Multi-stage networks typically have multiple paths between each source, destination pair. Hence, each switch in the network may have multiple viable egress ports (leading to multiple next-hop switches) to reach the eventual destination. Typically such next hops are treated with the same cost, i.e. traffic is distributed evenly among all the egress ports. In particular, packets grouped according to a certain set of characteristics called flows (e.g. same source/destination Internet Protocol (IP) address, source/destination transport protocol port, and protocol type) are sent along the same path. However, different flows are distributed among the multiple ports using a hash function that maps a given flow to a given egress port. When flows are distributed evenly among all viable ports, it is called Equal Cost Multi Path (ECMP) flow distribution.